//
//  AlertDialog.h
//  PigMarket
//
//  Created by Felix on 2019/3/6.
//  Copyright © 2019 felix.pigmarket.oc. All rights reserved.
//

#import "BasicDialog.h"

NS_ASSUME_NONNULL_BEGIN

@class AlertDialogBuilder;

@interface AlertDialog : BasicDialog

- (instancetype)initWithAlertDialogBuilder:(AlertDialogBuilder *)builder;

@end

@interface AlertDialogBuilder : NSObject

/**
 标题背景色
 */
@property (nonatomic , strong) UIColor *titleBackgroundColor;

/**
 标题字体颜色
 */
@property (nonatomic , strong) UIColor *titleFontColor;

/**
 标题字体大小
 */
@property (nonatomic, assign) CGFloat titleFontSize;

/**
 标题
 */
@property (nonatomic , strong) NSString *title;

/**
 内容
 */
@property (nonatomic , strong) NSString *contentText;

/**
 文字格式
 */
@property (nonatomic, assign) NSTextAlignment textAlignment;

/**
 内容View
 */
@property (nonatomic , strong) UIView *contentView;

/**
 积极的BtnTitle
 */
@property (nonatomic , strong) NSString *positiveBtnTitle;

/**
 取消的BtnTitle
 */
@property (nonatomic , strong) NSString *cancelBtnTitle;

/**
 积极的按钮回调
 */
@property (nonatomic , copy) void(^cancelBtnBlock)(void);

/**
 取消按钮回调
 */
@property (nonatomic , copy) void(^positiveBtnBlock)(void);

- (AlertDialogBuilder *(^)(UIColor *titleBackgroundColor))buildTitleBackgroundColor;
- (AlertDialogBuilder *(^)(UIColor *titleFontColor))buildTitleFontColor;
- (AlertDialogBuilder *(^)(CGFloat titleFontSize))buildTitleFontSize;
- (AlertDialogBuilder *(^)(NSString *title))buildTitle;
- (AlertDialogBuilder *(^)(NSString *contentText))buildContentText;
- (AlertDialogBuilder *(^)(NSTextAlignment textAlignment))buildTextAlignment;
- (AlertDialogBuilder *(^)(UIView *contentView))buildContentView;
- (AlertDialogBuilder *(^)(NSString *cancelBtnTitle))buildCancelBtnTitle;
- (AlertDialogBuilder *(^)(NSString *positiveBtnTitle))buildPositiveBtnTitle;

- (AlertDialogBuilder *(^)(void(^cancelBtnBlock)(void)))buildCancelBtnBlockBlock;
- (AlertDialogBuilder *(^)(void(^positiveBtnBlock)(void)))buildPositiveBtnBlock;

- (AlertDialog *)buildAlertDialog;

@end

NS_ASSUME_NONNULL_END
